Enterprise modeling typically involves the building of a graphical diagram that describes and defines structures, processes, information, and/or resources of an organization. Such diagrams, also known as models, are graphical representations that generally are composed from a set of predefined symbols and connection types. Process models and data models are some of the most prominent types of enterprise models, although organizational charts, entity relationship diagrams, value added chain diagrams, function trees, value stream maps, and the like also are well-known and widely-used enterprise model types.
There are some commercially available software tools that support enterprise modeling. Some of these tools focus on business process modeling, while others have specialized in data modeling, IT planning, and/or the like. Currently, the most prevalent group of commercially available software tools may be classified as being Business Process Analysis (BPA)/Enterprise Architecture (EA) software tools. These tools typically offer a broad spectrum of functionalities, not only for modeling, but also for analyzing and publishing enterprise models. ARIS, MEGA, and Adonis are examples of BPA/EA tools.
Modeling activity usually starts with a group of people discussing the content and structure of the enterprise model. Despite some attempts to support such discussions with software (e.g., virtual meeting software and/or collaboration tools such as Skype, WebEx, etc.), many of these discussion occur in face-to-face meetings and workshops. The results of these face-to-face meetings and workshops typically are documented during the meeting via whiteboards, flipcharts, and/or the like. This manual process allows models to be developed quickly and interactively, without requiring users to struggle with technology.
At some point (e.g., once the group is satisfied with the result), the content created on the whiteboard or flipchart needs to be transferred into a modeling tool. This transference unfortunately is a tedious task that typically is performed in a fully manual fashion. There accordingly is a substantial “media break” as between the creation of content on the whiteboard or flipchart, and the creation of a corresponding model via a software tool. This media break unfortunately carries costs in that the manual transference process is error-prone, typically requires redundant review exercises, sometimes produces low-quality results (e.g., if there is a lack of understanding in what was created in the real world, how what was created in the real world relates to the computer modeling tool's capabilities, etc.). Thus, there unfortunately is a resource drain associated with this burdensome manual process.
Mobile computing in general allows computer technology to be brought into meeting situations, and modeling software to be used during discussions to capture results directly digitally. With a mobile computing approach, a model can be created in the software in a direct, digital manner, and can be refined and distributed therefrom after the meeting. Mobile computing therefore removes the media break discussed above. Unfortunately, it typically is difficult for groups to focus on the discussion and the results while dealing with modeling program software and associated hardware (e.g., laptop, projector, power line, etc.). Mobile computing solutions also typically allow only one person to provide input at a time (e.g., through a keyboard and/or mouse, etc.). Thus, the ability to accommodate multiple idea contributions in parallel may not be feasible or even possible in many cases. There also is a risk of becoming lost in technical details, as opposed to focusing on the actual subject. Directly using modeling software with a mobile computing device may also require technical people familiar with the “ins-and-outs” of software to be present and engaged.
The Symbio Workshop Scanner by Ploetz+Zeller GmbH is a piece of desktop software that takes a digital picture of a process model as an input, analyzes symbols and text, and creates an adequate process model in the Symbio modeling software. Process models created by static shapes on a whiteboard can be digitized automatically. Unfortunately, however, semantics of the modeling objects are determined solely by static shapes to be retrieved from the vendor. The technology is limited to the process flows that are sequences of activities, and there are no complementary model object types (e.g., roles, input, output, IT systems, etc.) possible. Text recognition tends to work well, but there is no machine learning included. On the whole, a classical top-to-bottom flow is very rigid and difficult to handle on classical whiteboards. Configuration possibilities are extremely limited.
U.S. Pat. No. 9,558,467 helps address the media break between whiteboards, flipcharts, and the like, and modeling software and computerized modeling systems. For instance, certain example embodiments of the '467 patent address the media discontinuity when models (e.g., business models) are designed on a whiteboard or other physical medium and later need to be stored electronically on a computer in a computerized and standardized modeling language format. Certain example embodiments of the '467 patent use a camera and a software application to identify certain graphical elements and text, and then transform the picture into the computerized model. A different modeling “language” may be used on the whiteboard, as compared to what is available on or via the computer. This transformation takes into account that an identical process can be described, advantageously, using a different grammar on a whiteboard than is applicable on a computer. For example, the complex connections between processing steps and also between roles of responsible people, as well as the input and output definitions, might be too complex to draw in the same way on the board as is shown on a computer screen. In this sense, certain example embodiments introduce a model type for a whiteboard, which offers certain advantages over the standard computer modeling, while allowing for a clearer processing by the photo-imaging software, e.g., to help uniquely identify each token as being grammatically and semantically correct.
Although the techniques of the '467 patent are advantageous compared to prior art approaches, the inventors of have recognized that further technical improvements are still possible. For example, although the '467 patent helps address the media discontinuity when models are designed on a whiteboard or other physical medium and later need to be stored electronically on a computer in a computerized and standardized modeling language format, certain example embodiments of this invention take into account the fact that there might not always be a physically-created model, whiteboard schematic, or the like. Certain example embodiments provide a solution that helps to solve the problems associated with this yet broader technical gap, reducing the manual burden involved in recognizing and transforming an orally-described and/or manually-sketched model on a whiteboard platform to a digitized model that fits within an enterprise modeling computer system.
One aspect of certain example embodiments relates to the ability to help bridge the gap between the spontaneous, unstructured and/or only loosely structured nature of more freely-flowing oral conversations, and modeling software and computerized modeling systems. For instance, certain example embodiments address the media discontinuity when models (e.g., business models) are described orally in brainstorming, planning, and/or other sessions, and then later need to store representations of such models electronically on computers in a computerized and standardized modeling language format. This approach is technically advantageous, as formalized models can be created quickly, accurately, and more directly, from the original idea phase at which they are presented, thereby bypassing the need for physical media, and physical media designed in accordance with a predefined format, while also reducing and potentially eliminating the need for an understanding of how specialized modeling software works, how models are to be formatted, etc.ki
Another aspect of certain example embodiments relates to transforming conversations that often are free-flowing and lack a concrete relationship to a formalized input pattern, into a standardized modeling language format. This is aided through the use of extensible grammars in certain example embodiments. For instance, in certain example embodiments, semantic concepts in the free-flowing oral conversation are recognized in connection with a general grammar that includes possible semantic concepts that are relevant to the computerized model and that are arranged hierarchically but that are domain-independent, and/or one or more domain-related grammars that include possible semantic concepts that are arranged hierarchically and associated with a domain to which the computerized model being created belongs and/or. The use of a “general” grammar is technically advantageous in that, among other things, it provides for a basic level of interoperability, regardless of what type of model is being created, the domain(s) to which the model belong(s), etc. The general grammar also is technically advantageous in that it allows for different model concepts to be “hot swapped” into the model-generating platform, e.g., thereby enabling different semantic concepts specific to different modeling languages to be understandable, even as modeling languages are defined or refined to include new and/or modified concepts, to deal with deprecated concepts, etc. The use of one or more domain-related grammars is technically advantageous because they enable the quality of the recognition to be more accurate and precise, e.g., by cataloging the terms most likely to be of relevance in a particular area, to provide disambiguation between general model and domain-specific concepts, as well as between different domain-specific concepts and concepts that might have different meanings depending on the domain, etc. Domain-related grammars also are technically advantageous because they allow the model-generating platform to be made more generic, e.g., such that the same platform can be used to create models for drastically different industries and/or technologies, to recognize objects of potentially very different physical and/or virtual types, etc. Domain-specific grammars may also enable linkages to a wide variety of different physical elements (e.g., computer hardware in an online order processing system, robots used in creating a vehicle, sensors applied to homes, etc.) relevant for the model's deployment. The separation of domain-related and general model-related grammars thus is technically advantageous in terms of further enhancing the flexibility and extensibility of the platform. Moreover, although voice recognition technology and natural language processing are inherently technical in nature, the use of different grammars in the ways described herein further improve on these underlying technologies, e.g., by facilitating a baseline level of interoperability regardless of domain, deployment system, physical elements to be manipulated post-deployment, etc., while also enabling much higher quality and much more precise recognitions to be made through the use of hierarchical and extensible domain-related grammars—which in turn advantageously leads to much more accurate and precise model creation. There is a synergistic technical effect in this sense, as the general model grammar can be highly specialized for model creation, while the domain-related grammars can be highly specialized for specific industries, technology areas, etc.
Another aspect of certain example embodiments relates to a multi-stepped or multi-phase transformation where the objects, object types, connections, aurally recognized text, etc., can be manually corrected. This multi-pass approach advantageously aids in providing for smoother conversions from natural language audio to the formalized modeling language.
Still another aspect of certain example embodiments relates to an approach for potentially obviating the need to use different modeling languages and a transformation process between two different media (e.g., computer and computer, audio and computer, etc.), in order to compensate for the media break between the original natural language description of the model and the formalized representation.
Advantageously, the suggested language and the transformation may be flexible and adjustable for different requirements of the modeling, as well as for the computer model engine. For example, using a multi-step transformation advantageously allows for a transparent way of adjusting the (sometimes very coarse) output from automatic audio recognition and digital audio processing hardware and/or software, e.g., for nuanced connections, symbols, and text recognition, etc.
In certain example embodiments, a system for creating a computerized model usable in connection with an enterprise modeling platform is provided. The computerized model is defined in connection with a formalized modeling language. The system includes an audio input interface and a display device, as well as processing resources including at least one processor and a memory operably coupled thereto. The processing resources are configured to control the system to at least receive, over the audio input interface, audio input of an orally-described model from which the computerized model is to be created. The orally-described model has semantic concepts associable with the formalized modeling language but following a natural language pattern rather than an input pattern expected by the formalized modeling language. The semantic concepts included in the orally-described model are recognized, with the recognizing including a plurality of different identification levels, and with the different identification levels respectively corresponding to recognitions of semantic concepts in the orally-described model including (a) objects for inclusion in the computerized model, (b) object types for the recognized objects, and (c) connections between at least some of the recognized objects. At least some of the semantic concepts are recognizable from a domain-specific grammar that includes possible semantic concepts that are arranged hierarchically and associated with a domain to which the computerized model being created belongs, and at least some others of the semantic concepts are recognizable from a general grammar that includes other possible semantic concepts that are relevant to the computerized model and that are arranged hierarchically but that are domain-independent. A digitized iteratively-reviewed version of the orally-described model is generated by: presenting, on the display device and on an identification level by identification level basis, results of the recognitions corresponding to at least some of the respective identification levels; and accepting user modification(s) to the results on the identification level by identification level basis. The digitized iteratively-reviewed version of the orally-described model is transformed into the computerized model in accordance with a set of rules defining relationships between elements in the digitized iteratively-reviewed version of the orally-described model and the formalized modeling language.
In certain example embodiments, a system for creating a computerized model usable in connection with an enterprise modeling platform is provided. The computerized model is defined in connection with a formalized modeling language. The system includes an audio input interface and a display device. A domain-specific grammar store includes possible semantic concepts that are arranged hierarchically and associated with a domain to which the computerized model being created belongs. A model grammar store includes other possible semantic concepts that are relevant to the computerized model, are arranged hierarchically, and are domain-independent. Processing resources including at least one processor and a memory operably coupled thereto are configured to control the system to at least: receive, over the audio input interface, audio input of an orally-described model from which the computerized model is to be created, the orally-described model having semantic concepts associable with the formalized modeling language but following a natural language pattern rather than an input pattern expected by the formalized modeling language; split the audio input into discrete sentences; identify and tag each word in each discrete sentence with a part of speech corresponding to the way in which it is used in the natural language pattern that the orally-described model follows; for each discrete sentence, and based on the tags, grouping together syntactically correlated words into one or more phrases (e.g., with the grouping involving at least two different phases, at least one of the phases being a positive filter for grouping together different words and at least one other of the phases being a negative filter for discarding words, and possibly in which a first phase is chunking and a second phase is chinking, e.g., with the first and second phases being performed in this order or a reversed order); separate each discrete sentence into one or more meaningful parts (e.g., based on one of a conjunction, subordinating conjunction, and adverb, being present in the respective discrete sentence); identify as context-relevant each meaningful part that includes (a) a phrase and/or (b) a word that is not a part of a phrase, that correspond(s) to a semantic concept found in the domain-specific grammar store and/or the model grammar store; for each identified context-relevant meaningful part, create a candidate object for inclusion in the computerized model, each created candidate object having associated therewith system-derived properties including a proposed order, proposed name, and proposed type; facilitate interactive step-wise user review by displaying, receiving user confirmation of, and enabling user modification(s) to, results generated responsive to one or more of: the splitting of the audio input into the discrete sentences, the separation of each discrete sentence into the one or more meaningful parts, the identification of each context-relevant meaningful part, the creation of each candidate object, and identification of the system-derived properties; generate a digitized iteratively-reviewed version of the orally-described model by presenting, on the display device, the created candidate objects together with indicia of their respective proposed names and proposed types, the created candidate objects being arranged in accordance with their proposed orders, and accepting user modification(s) to the presentation; and transform the digitized iteratively-reviewed version of the orally-described model into the computerized model in accordance with a set of rules defining relationships between elements in the digitized iteratively-reviewed version of the orally-described model and the formalized modeling language.
According to certain example embodiments, the processing resources may be further configured to control the system to at least (e.g., as a part of the recognizing): split the audio input into discrete sentences; identify and tag each word in each discrete sentence with a part of speech corresponding to a way in which it is used in the natural language pattern that the orally-described model follows; for each discrete sentence, and based on the tags, group together syntactically correlated words into one or more phrases; separate each discrete sentence into one or more meaningful parts; identify as context-relevant each meaningful part that includes (a) a phrase and/or (b) a word that is not a part of a phrase, that correspond(s) to a semantic concept found in the domain-specific grammar and/or the general grammar; and for each identified context-relevant meaningful part, create a candidate object for inclusion in the computerized model, each created candidate object having associated therewith system-derived properties including a proposed order, proposed name, and proposed type. The created candidate objects may be user-reviewable in connection with the generation of the digitized iteratively-reviewed version of the orally-described model.
According to certain example embodiments, the grouping may involve at least two different phases, e.g., with at least one of the phases involving implementation of a positive filter for grouping together different words and at least one other of the phases involving implementation of a negative filter for discarding words. In this sense, a first phase may be chunking and a second phase may be chinking, with the first and second phases possibly being performed in this order.
According to certain example embodiments, the processing resources may be configured to control the system to at least facilitate interactive step-wise user review by displaying, receiving user confirmation of, and enabling user modification(s) to, results generated responsive to one or more of: the splitting of the audio input into the discrete sentences, the separation of each discrete sentence into the one or more meaningful parts, the identification of each context-relevant meaningful part, the creation of each candidate object, and identification of the system-derived properties.
According to certain example embodiments, the identification levels may further include results generated responsive to the splitting of the audio input into the discrete sentences, the separation of each discrete sentence into the one or more meaningful parts, the identification of each context-relevant meaningful part, the creation of each candidate object, and identification of the system-derived properties.
According to certain example embodiments, the processing resources may be configured to control the system to at least deploy the computerized model, once transformed from the digitized iteratively-reviewed version of the orally-described model, to the enterprise modeling platform. In this regard, in certain example embodiments, the deployment may be performed to cause physical elements of a real-world analog of the computerized model to behave differently compared to a pre-deployment scenario, to cause computer-based resources of a real-world analog of the computerized model to interact with each other differently compared to a pre-deployment scenario, etc.
In addition to the features of the previous paragraphs, counterpart methods, non-transitory computer readable storage media tangibly storing instructions for performing such methods, executable computer programs, and the like, are contemplated herein, as well.
These features, aspects, advantages, and example embodiments may be used separately and/or applied in various combinations to achieve yet further embodiments of this invention.